﻿using System;

namespace LynxWiki.Infrastructure
{
    public interface IWikiTopicRepository
    {
        void Add(LynxWiki.DomainModel.TopicVersion tv);
        int GetTopicVersionCount(string pageName);
        int GetTopicCurrentVersionNumber(string pageName);
        System.Collections.Generic.IEnumerable<LynxWiki.DomainModel.TopicVersion> GetTopicVersions(string pageName);
        void Remove(LynxWiki.DomainModel.TopicVersion tv);
        void RemoveWikiTopic(string topicName);
        void Update(LynxWiki.DomainModel.TopicVersion tv);
        LynxWiki.DomainModel.TopicVersion GetCurrentVersion(string pageName);
        LynxWiki.DomainModel.TopicVersion GetSpecificVersion(string pageName, int version);
        LynxWiki.DomainModel.TopicVersion GetSpecificVersion(string fileName);
    }
}
